﻿using QuanLyThongTinCoSo.BaseForm;
using QuanLyThongTinCoSo.Biz;
using QuanLyThongTinCoSo.Common;
using Model = Database.Models;

namespace QuanLyThongTinCoSo.Forms.NhomPhuongTien
{
    public partial class frmNhomPhuongTienDetail : frmDetail
    {
        //private readonly int itemId;

        public frmNhomPhuongTienDetail()
        {
            InitializeComponent();
            Text = @"Thêm mới nhóm phương tiện";
            
            txtTenLoai.Focus();
        }

        public frmNhomPhuongTienDetail(int id)
        {
            InitializeComponent();
            Text = @"Sửa nhóm phương tiện";

            txtTenLoai.Focus();
            
            _fromtype = Constant.TypeForm.Edit;
            _id = id;

            var biz = new NhomPhuongTienBiz();
            var model = biz.GetItemById(id) as Model.NhomPhuongTien;
            if (model == null) return;

            txtTenLoai.Text = model.Ten;
        }

        #region Validation
        protected override bool Validation()
        {
            bool flag = true;

            errorProvider.Dispose();

            if (string.IsNullOrEmpty(txtTenLoai.Text))
            {
                errorProvider.SetError(txtTenLoai, "Bạn chưa nhập tên nhóm phương tiện. Xin vui lòng kiểm tra lại");
                flag = false;
            }

            return flag;
        }
        #endregion

        #region Insert
        protected override void Insert()
        {
            var model = new Model.NhomPhuongTien
                            {
                Ten = txtTenLoai.Text,
            };
            var biz = new NhomPhuongTienBiz();
            biz.Insert(model);
        }
        #endregion

        protected override void Edit()
        {
            var biz = new NhomPhuongTienBiz();
            var item = biz.GetItemById(_id) as Model.NhomPhuongTien;
            if (item != null)
            {
                item.Ten = txtTenLoai.Text;
                biz.Update(item);
            }
        }
    }
}